看看 台積電 軟體工程師徵才的 JD:
1.Develop state of the art code
2.Continue to refactor existing applications
3.Contribute to write tests to ensure software quality
4.Apply software design principles to ensure software quality
5.Ensure sustainability and performance of software applications
6.Collaborate with colleagues in design and code reviews.
7.Willing to learn new IT technology
...
1.BS/MS degree or above and major in Computer Science, Information engineering, Industry Engineering, Statistics or Mathematic related fields, similar technical field of study or equivalent practical experience.
2.Good at any listed programming languages : C++,C#, JAVA, Python, GO, JavaScript.
3.Familiar with software engineering methodologies: UP, XP or DevOps
4.Familiar with software engineering practices: CI, CD, DDD or TDD
5.Have foundation of OOP, design principles and design patterns
6.Experience managing container-based workloads, using Kubernetes or other orchestration software is a plus.
7.Good communication skills with proactive, good interpersonal and problem-solving capability.
8.With AI related experience is a plus.
9.Familiar with source code version control tools : Git
—
雖然我無法確定台積電裡面這些東西落實的程度有多少,事實上這份 JD 也是蠻大鍋炒的,但是其實仔細看,這些要求跟加分的選項,不就是這幾年我粉絲專頁上分享、技術培訓課程主題、輔導客戶的顧問案 一直在圍繞的東西嗎?
就是一些基本功,得搞到很扎實的基本功,得這些面向都顧到的基本功,得有這些基本功對應的實務經驗/創造價值的經驗,其實就可以篩掉95%的應徵者了。
很多人心心念念想要到自己理想的公司或工作內容,卻只停在想,而沒開始行動「#讓自己有資格去爭取這份工作」。
—
上面這份 JD 真要挑比較跳的地方,就是那個 AI related experience is a plus.
不過都說是 plus 了,就看看就好。扣掉這一點,如果其他的部份你都可以很紮實,說真的,是你在挑工作,不是工作在挑你。
光一個 TDD, 有多少工程師是真能在產品開發上,時程壓力中,用 TDD 來開發,而且獲得對應的好處呢?
至少讓自己能多符合一些上面 JD的技能要求吧:https://tdd.best/category/courses/
「continue in java」的推薦目錄:
- 關於continue in java 在 91 敏捷開發之路 Facebook 的精選貼文
- 關於continue in java 在 โปรแกรมเมอร์ไทย Thai programmer Facebook 的最佳解答
- 關於continue in java 在 โปรแกรมเมอร์ไทย Thai programmer Facebook 的最佳貼文
- 關於continue in java 在 What is the "continue" keyword and how does it work in Java? 的評價
- 關於continue in java 在 Is "continue" and "break" in loops antipattern/bad practice in ... 的評價
continue in java 在 โปรแกรมเมอร์ไทย Thai programmer Facebook 的最佳解答
👨🏫 ในรูปได้ยกตัวอย่าง ช่องโหว่ของการเขียนโปรแกรม
ที่เปิดโอกาสให้ผู้ประสงค์ร้ายสามารถโจมตีด้วยวิธี
Command Injection
.
ช่องโหว่นี้เกิดจากในหลายๆ ภาษาโปรแกรมมิ่ง
ได้อนุญาติให้เรียกคำสั่งของระบบปฏิบัติการได้โดยตรง
ซึ่งสุ่มเสี่ยงให้ผู้โจมตีฉวยโอกาสนี้ฉีดคำสั่งเข้าไปในโค้ด
ด้วยการต่อท้ายด้วยข้อความ &&
จึงทำให้แทรกคำสั่งอันตรายเข้าไปได้ เช่น
:
del /F * บน window
หรือ rm -rf * บน linux
:
ในรูปได้ยกตัวอย่างโค้ดภาษา Java
ซึ่งทำงานบน Window
จะเห็นว่าสามารถใช้ && แล้วต่อท้ายด้วยคำสั่งอะไรก็ได้
เช่น && tasklist && dir เป็นต้น
.
แล้วถ้าโปรแกรมมันรันใน linux/Unix
ก็สามารถต่อคำสั่งเป็นลูกโซ่ด้วยข้อความ && หรือ ; ก็ได้
:
และไม่ใช่ Java ภาษาเดียว ที่มีช่องโหว่ประเภทนี้
มันเกิดได้หลายภาษา
ที่อนุญาติให้เรียกคำสั่งของระบบปฏิการโดยตรง
เช่น C#, Python, PHP และหลายๆ ภาษาที่ไม่ได้เอ่ยถึง
:
++++วิธีป้องกัน+++
🤔 ต้อง validate ข้อมูล input อย่างเข้มงวด เช่น
- กรอง input ที่เข้ามา กำหนดว่ามีอะไรได้บ้าง?
- input ที่เข้ามา ห้ามเป็นคำสั่งของระบบปฏิบัติการเด็ดขาด
- ห้ามมี && และ ; อยู่ใน input ที่เข้ามา
- เป็นต้น
.
😏 หรือจะเลี่ยงวิธีเขียนเรียกคำสั่งของระบบปฏิบัติการโดยตรง ไม่ต้องใช้ก็ย่อมได้
++++
เขียนโดย โปรแกรมเมอร์ไทย thai programmer
.
ดูตัวอย่างเพิ่มเติม
https://www.owasp.org/index.php/Command_Injection
👨 🏫 In the photo, for example, the loophole of programming.
Open doors for the evil wills to attack by the way.
Command Injection
.
This loophole is born in many programming languages.
Permission to call direct order of operating system
Who randomly risked this opportunity attacker to inject an order into code.
By ending with a text &&
It's so dangerous to insert like
:
del / F F on window
or rm-rf rf on linux
:
In the picture, for example, Java language code.
Which works on Window
Will see that I can use && and then end up with any order.
Like && tasklist && dir etc.
.
And if the program runs in linux / Unix
Can continue with chain order with text && or; either.
:
And not Java the only language has this type of loophole
It can be born in many languages.
Allowing to call direct command of the operational system.
Like C #, Python, PHP and many languages that are not mentioned.
:
++++ How to prevent +++
🤔 Must strictly validate input information like
- Input filter that comes to determine what's available?
- Input that comes to prohibit is an order of an operating system.
- Don't have && and; stay input that comes.
- etc.
.
😏 or avoid the way to write, call direct command of an operating system. No need to use it.
++++
Written by Thai programmer thai coder
.
See more previews
https://www.owasp.org/index.php/Command_InjectionTranslated
continue in java 在 โปรแกรมเมอร์ไทย Thai programmer Facebook 的最佳貼文
👨🏫 ในรูปได้ยกตัวอย่าง ช่องโหว่ของการเขียนโปรแกรม
ที่เปิดโอกาสให้ผู้ประสงค์ร้ายสามารถโจมตีด้วยวิธี
Command Injection
.
ช่องโหว่นี้เกิดจากในหลายๆ ภาษาโปรแกรมมิ่ง
ได้อนุญาติให้เรียกคำสั่งของระบบปฏิบัติการได้โดยตรง
ซึ่งสุ่มเสี่ยงให้ผู้โจมตีฉวยโอกาสนี้ฉีดคำสั่งเข้าไปในโค้ด
ด้วยการต่อท้ายด้วยข้อความ &&
จึงทำให้แทรกคำสั่งอันตรายเข้าไปได้ เช่น
:
del /F * บน window
หรือ rm -rf * บน linux
:
ในรูปได้ยกตัวอย่างโค้ดภาษา Java
ซึ่งทำงานบน Window
จะเห็นว่าสามารถใช้ && แล้วต่อท้ายด้วยคำสั่งอะไรก็ได้
เช่น && tasklist && dir เป็นต้น
.
แล้วถ้าโปรแกรมมันรันใน linux/Unix
ก็สามารถต่อคำสั่งเป็นลูกโซ่ด้วยข้อความ && หรือ ; ก็ได้
:
และไม่ใช่ Java ภาษาเดียว ที่มีช่องโหว่ประเภทนี้
มันเกิดได้หลายภาษา
ที่อนุญาติให้เรียกคำสั่งของระบบปฏิการโดยตรง
เช่น C#, Python, PHP และหลายๆ ภาษาที่ไม่ได้เอ่ยถึง
:
++++วิธีป้องกัน+++
🤔 ต้อง validate ข้อมูล input อย่างเข้มงวด เช่น
- กรอง input ที่เข้ามา กำหนดว่ามีอะไรได้บ้าง?
- input ที่เข้ามา ห้ามเป็นคำสั่งของระบบปฏิบัติการเด็ดขาด
- ห้ามมี && และ ; อยู่ใน input ที่เข้ามา
- เป็นต้น
.
😏 หรือจะเลี่ยงวิธีเขียนเรียกคำสั่งของระบบปฏิบัติการโดยตรง ไม่ต้องใช้ก็ย่อมได้
++++
เขียนโดย โปรแกรมเมอร์ไทย thai programmer
.
ดูตัวอย่างเพิ่มเติม
https://www.owasp.org/index.php/Command_Injection
👨 🏫 In the photo, for example, the loophole of programming.
Open doors for the evil wills to attack by the way.
Command Injection
.
This loophole is born in many programming languages.
Permission to call direct order of operating system
Who randomly risked this opportunity attacker to inject an order into code.
By ending with a text &&
It's so dangerous to insert like
:
del / F F on window
or rm-rf rf on linux
:
In the picture, for example, Java language code.
Which works on Window
Will see that I can use && and then end up with any order.
Like && tasklist && dir etc.
.
And if the program runs in linux / Unix
Can continue with chain order with text && or; either.
:
And not Java the only language has this type of loophole
It can be born in many languages.
Allowing to call direct command of the operational system.
Like C #, Python, PHP and many languages that are not mentioned.
:
++++ How to prevent +++
🤔 Must strictly validate input information like
- Input filter that comes to determine what's available?
- Input that comes to prohibit is an order of an operating system.
- Don't have && and; stay input that comes.
- etc.
.
😏 or avoid the way to write, call direct command of an operating system. No need to use it.
++++
Written by Thai programmer thai coder
.
See more previews
https://www.owasp.org/index.php/Command_InjectionTranslated
continue in java 在 Is "continue" and "break" in loops antipattern/bad practice in ... 的推薦與評價
Correction: continue gets you out of one iteration of a loop, ... From Java Tutorials : Branching Statements break and continue when used with labels have a ... ... <看更多>
continue in java 在 What is the "continue" keyword and how does it work in Java? 的推薦與評價
... <看更多>
相關內容